home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 2 / AACD 2.iso / AACD / Programming / fpc / amigaunits / expansionbase.pas < prev    next >
Pascal/Delphi Source File  |  1998-09-22  |  3KB  |  95 lines

  1. {
  2.     This file is part of the Free Pascal run time library.
  3.  
  4.     A file in Amiga system run time library.
  5.     Copyright (c) 1998 by Nils Sjoholm
  6.     member of the Amiga RTL development team.
  7.  
  8.     See the file COPYING.FPC, included in this distribution,
  9.     for details about the copyright.
  10.  
  11.     This program is distributed in the hope that it will be useful,
  12.     but WITHOUT ANY WARRANTY; without even the implied warranty of
  13.     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  14.  
  15.  **********************************************************************}
  16.  
  17.  
  18. unit expansionbase;
  19.  
  20. INTERFACE
  21.  
  22. uses exec, configvars;
  23.  
  24. Const
  25.  
  26.     TOTALSLOTS  = 256;
  27.  
  28. Type
  29.  
  30. { BootNodes are scanned by dos.library at startup.  Items found on the
  31.    list are started by dos. BootNodes are added with the AddDosNode() or
  32.    the V36 AddBootNode() calls. }
  33.  
  34.    pBootNode = ^tBootNode;
  35.    tBootNode = record
  36.     bn_Node     : tNode;
  37.     bn_Flags    : Word;
  38.     bn_DeviceNode  : Pointer;
  39.    END;
  40.  
  41.     pExpansionBase = ^tExpansionBase;
  42.     tExpansionBase = record
  43.         LibNode         : tLibrary;
  44.         Flags           : Byte;
  45.         eb_Private01    : Byte;
  46.         eb_Private02    : ULONG;
  47.         eb_Private02    : ULONG;
  48.         eb_Private04    : tCurrentBinding;
  49.         eb_Private05    : tList;
  50.         MountList       : tList;
  51.         { private }
  52.     end;
  53.  
  54. CONST
  55. { error codes }
  56.      EE_OK          = 0 ;
  57.      EE_LASTBOARD   = 40;  { could not shut him up }
  58.      EE_NOEXPANSION = 41;  { not enough expansion mem; board shut up }
  59.      EE_NOMEMORY    = 42;  { not enough normal memory }
  60.      EE_NOBOARD     = 43;  { no board at that address }
  61.      EE_BADMEM      = 44;  { tried to add bad memory card }
  62.  
  63. { Flags }
  64.      EBB_CLOGGED    = 0;       { someone could not be shutup }
  65.      EBF_CLOGGED    = 1;
  66.      EBB_SHORTMEM   = 1;       { ran out of expansion mem }
  67.      EBF_SHORTMEM   = 2;
  68.      EBB_BADMEM     = 2;       { tried to add bad memory card }
  69.      EBF_BADMEM     = 4;
  70.      EBB_DOSFLAG    = 3;       { reserved for use by AmigaDOS }
  71.      EBF_DOSFLAG    = 8;
  72.      EBB_KICKBACK33 = 4;       { reserved for use by AmigaDOS }
  73.      EBF_KICKBACK33 = 16;
  74.      EBB_KICKBACK36 = 5;       { reserved for use by AmigaDOS }
  75.      EBF_KICKBACK36 = 32;
  76. { If the following flag is set by a floppy's bootblock code, the initial
  77.    open of the initial shell window will be delayed until the first output
  78.    to that shell.  Otherwise the 1.3 compatible behavior applies. }
  79.      EBB_SILENTSTART = 6;
  80.      EBF_SILENTSTART = 64;
  81.  
  82. { Magic kludge for CC0 use }
  83.     EBB_START_CC0    = 7;
  84.     EBF_START_CC0    = 128;
  85.  
  86. IMPLEMENTATION
  87.  
  88. end.
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.